// 思路，双指针法
// 定义两个指针slow和fast，分别指向去除重复元素的末尾位置和当前元素
// 如果slow位置的元素和fast位置的元素不相等，将slow右移一位，并把fast位置的元素赋值给slow位置
function removeDuplicates(arr) {
    if (arr.length <= 1) {
        return arr.length
    }
    let slow = 0
    let fast = 1
    while (fast < arr.length) {
        if (arr[slow] !== arr[fast]) {
            slow++
            arr[slow] = arr[fast]
        }
        fast++
    }
    return slow + 1
}

let arr = [1, 2, 3, 3, 4, 4, 5]
console.log(removeDuplicates(arr))
console.log(arr)
